/*===========================================================
 
 .---=||||[ B L O O D Y ]|||||=====================----------....
 |                                                              |
 |    THE  M O S T   B L O O D Y  GAME EVER!                    |
 |                                                              |
 |    bloody harvest is coming... soon,                         |
 |                                              heil Satan!     |
 !                                                              !
 .                                                              ,
  ~~~~-------------================================|||||||||==-~




 Name-Space: core::evnt
 Module: evnt
 Class: Mouse
 Last modification:  <author>, <time>

 TODO:
 <-------- todo #1 ---------->
 <-------- todo #2 ---------->
 <-------- todo #3 ---------->
        ............
 <-------- todo #n ---------->

 FIX:
 <-------- fix #1 ----------->
 <-------- fix #1 ----------->
         ..........
 <-------- fix #n ----------->




 
 
 ============================================================*/
#ifndef MOUSE_H_
#define MOUSE_H_

#include "common.h"

namespace core
{
	namespace evnt
	{
		
		class Mouse
		{
			int x,y;
			int button;
		public:
			Mouse();
			virtual ~Mouse();
			int getX(){ return x; }
			int getY(){ return y; }
			void setXY(int x, int y);
			int getButton(){ return button; }
			void processButtonEvent(const SDL_MouseButtonEvent& event);
			void processMotionEvent(const SDL_MouseMotionEvent& event);

			
			void show();
			void hide();
			
			enum { LeftButton=0x01, MiddleButton = 0x02, RightButton = 0x04 };
		};
	}
}

#endif /*MOUSE_H_*/
